Using Recovered Views to Track Architectural Evolution
نویسنده
چکیده
Tracking the evolution of a software system through time gives us valuable information. It suggests which parts are likely to remain stable and which ’problem’ aspects are likely to change, and it gives us insight into some of the design choices made. In this paper we show how recovered views of succesive versions of the same software system can be used to track evolution. We first briefly describe our approach for recovering views of software applications. We then compare views of two versions of the HotDraw framework. Our objective is to illustrate a number of issues concerning architectural evolution: what is architectural change as opposed to change in general? how can we detect architectural drift? how can we evaluate the relative quality of different architectural solutions? what are guidelines for building evolvable software?
منابع مشابه
Architectural Reflection for Software Evolution
Software evolution is expensive. Lehman identifies several problems associated with it: Continuous adaptation, increasing complexity, continuing growth, and declining quality. This paper proposes that a reflective software engineering environment will address these problems by employing languages and techniques from the software architecture community. Creating a software system will involve ma...
متن کاملTowards an Integrated View on Architecture and its Evolution
Information about the evolution of a software architecture can be found in the source basis of a project and in the release history data such as modification reports. Existing approaches deal with these two data sources separately and do not exploit the integration of their analyses. In this paper, we present an architecture analysis approach that utilizes both evolution data sources and provid...
متن کاملSemi-automated architectural abstraction specifications for supporting software evolution
In this paper we present an approach for supporting the semi-automated architectural abstraction of architectural models throughout the software lifecycle. It addresses the problem that the design and implementation of a software system often drift apart as software systems evolve, leading to architectural knowledge evaporation. Our approach provides concepts and tool support for the semiautoma...
متن کاملModeling Traceability of Concerns for Synchronizing Architectural Views
Software architecture modeling includes the description of different views that represent the architectural concerns from different stakeholder perspectives. In case of evolution of the software system the related architectural views need to be adapted accordingly. To synchronize the architectural views it is necessary that the dependency links among the architectural concerns in the architectu...
متن کاملThe Study in Architects’ Thoughts Evolution in Pahlavi Era by Using Content Analysis
The study of the architectural history is a critical attempt to understanding the architecture. Our expectation of studying history of architecture is not just understanding past, but the relationship between past and future. Contemporary architectural scholars should not consider architecture as changing and renewing phenomenon, but pinpoint its nature, beginning and the process of its transfo...
متن کامل